home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 007 / c80tcog.lbr / ITOA.C < prev    next >
Text File  |  1985-08-09  |  896b  |  49 lines

  1. /* itoa - convert integer to string */
  2. /* Version 1.1 1982/11/15 22:30    */
  3. /* Kernighan, Brian W. & Ritchie, Dennis M.
  4.     "The C Programming Language", Prentice-Hall,
  5. Englewood Cliffs, NJ, 1978, p. 59-60        */
  6.  
  7. #ifdef MAINLY
  8. #else
  9. #include "c80def.h"
  10. #endif
  11.  
  12. #ifdef UNIX
  13. char *
  14. #endif
  15. itoa(n, s)    /* convert n to characters in s,
  16.            return s    */
  17. int n;
  18. char *s;
  19. {
  20. register int i;
  21. register Boolean neg;
  22. char *t;
  23. static char Version[]= "Version 1.1 1982/11/15 22:30";
  24. neg= n < 0;    t= s;
  25. do {
  26.     *s++= abs(n % 10) + '0';
  27.    } while ((n/= 10) != 0);
  28. if    (neg)
  29.     *s++= '-';
  30. *s= EOS;
  31. return(reverse(t));
  32. }            /* itoa */
  33.  
  34. #ifdef UNIX
  35. char *
  36. #endif
  37. reverse(s)    /* reverse string s in place    */
  38. char s[];
  39. {
  40. register int c, i, j;
  41.  
  42. for (i= 0, j=strlen(s)-1; i < j; i++, j--) {
  43.     c= s[i];
  44.     s[i]= s[j];
  45.     s[j]= c;
  46.     }
  47. return(s);
  48. }            /* end reverse */
  49.